Directory Structure:

The Framing By Design folder is the project's root folder. It contains 4 subfolders, Assets, Packages, ProjectSettings, and UIElementsSchema, as well as other files required by the unity editor. Assets is the primary folder of the project, containing scripts, sprites, and other important files. The assets folder will be explained in greater detail in the next paragraph. Packages contains any dependencies the project relies on for functionality. ProjectSettings handles the project's configurations, including graphical settings. UIElementsSchema contains metadata for the UI Toolkit and UI builder in Unity

Within the assets folder are some important project files as well as several subfolders The "Interactible Images" subfolder includes sprites of observable in-game objects. NPC dialogues stores the NPC scripts for the different NPCs in the game. Prefabs contains any prefabs used to build in-game scenes, such as the choice button. Samples contains example content used in our project. The Scenes folder contains unity scene files. Scenes define the environments, UI layouts, dialogue flow, and gameplay states used in our project. 

Scripts is another subfolder in the assets folder. It contains the various scripts used by the game. The root scrips folder contains scripts pertaining to the overworld primarily, with 3 subfolders for our various systems. DialogueLoad contains dialogue-specific scripts. LogToCSV contains scripts pertaining to our logging feature. NotebookUI contains scripts pertaining to the player's notebook. 

Back to the Assets folder, another of its subfolders is the Settings folder, which contains configuration data, sometimes pertaining to specific scenes. The TextMeshPro folder contains metadata regarding Unity's TextMeshPro, which is essentially Unity's way of displaying and handling text. It also contains folders for any fonts, resources, shaders, or sprites used by the tool. Finally, the tiles folder defines the game's tileset, which is a collection of sprites used to define the game's overworld. 
		

How to run the project and play the game (For playtesters):

Note: This project was built and ran using a Windows 11/10 machine.

To run the game, run the included.exe file. Alternatively, open the project via Unity Hub using the latest editor version and play the game in the editor (Import the Framing By Design folder into Unity Hub). Doing this will take some time as Unity will have to build some files as part of the editor project onboarding process. 

In this build of the game, the goal is to speak with all characters currently implemented. The game should score you properly based on your performance in the interviews and allow you to collect insights regarding the problem.

The game is played with the following controls:

W - Move Up
A - Move Left
S - Move Down
D - Move Right
Spacebar - Progress through dialogue
I - Interact with characters
E - Interact with overworld objects
L - Log and export your current playthrough history and stats (If player consented to such)

To choose dialogue options, move your mouse and click the desired option

--How to retrieve player logs--

When a log is exported, it can be viewed through the following filepath:

C:\Users\(Put your username here)\AppData\LocalLow\DefaultCompany\Framing By Design

the log file will be titled something like:

"dialogue_log_793b9299-218d-4ee1-a7e0-eece5ddde42b.csv"

------------------------------------------------------------

MIT License

Copyright (c) [2025]

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
